home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacHack 2000
/
MacHack 2000.toast
/
pc
/
The Hacks
/
Softshoe
/
Lisa's Mac Parts
/
Views
/
Pane Frames
/
Frame.h
< prev
next >
Wrap
Text File
|
2000-06-23
|
1KB
|
60 lines
// Frame.h
#ifndef Frame_h
#define Frame_h
#ifndef StackedPane_h
#include "StackedPane.h"
#endif
#ifndef PaneStack_h
#include "PaneStack.h"
#endif
#ifndef SuggestsPaneSize_h
#include "SuggestsPaneSize.h"
#endif
class Frame: public PaneStack,
virtual public SuggestsPaneSize
{
private:
StackedPane interior;
StackedPane exterior;
const Rectangle32 thickness;
int32 OuterWidth( int32 inner ) const;
int32 OuterHeight( int32 inner ) const;
protected:
virtual void Arrange( UPoint32 size );
public:
Frame( const Announcing<UPoint32>& size,
Rectangle32 theThickness )
: PaneStack( size ),
interior( *this ),
exterior( *this ),
thickness( theThickness )
{}
const RectangularPane& Interior() const { return interior; }
RectangularPane& Interior() { return interior; }
const RectangularPane& Exterior() const { return exterior; }
RectangularPane& Exterior() { return exterior; }
virtual int32 MinimumWidth() const;
virtual int32 MinimumHeight() const;
virtual int32 MaximumWidth() const;
virtual int32 MaximumHeight() const;
virtual int32 ReasonableWidth() const;
virtual int32 ReasonableHeight() const;
virtual int32 BestWidth( Range32 bounds ) const;
virtual int32 BestHeight( Range32 bounds ) const;
};
#endif